package Ajedrez.Fichas;

import java.awt.Toolkit;
import javax.swing.ImageIcon;


public final class  Rey implements Pieza
{
	public boolean inicial=true;
	
	public String getName()
	{
		return "Rey";
	}

	@Override
	public int getValue()
	{
		//The kings' value is 0 or infinite. I'll set 1000 for the IA.
		return 1000;
	}

	@Override
	public  boolean[][] getMoves(int x,int y, boolean color)
	{
		boolean[][] posibles = new boolean [8][8];
		
		if(y - 1 >= 0 && x - 1 >=0)
		{
			posibles[x - 1][y - 1] = true;
			posibles[x -1][y] = true;
		}
		if(x - 1 >= 0 && y + 1 < 8)
			posibles[x -1][y + 1] = true;
		if(y - 1 >= 0)
			posibles[x][y - 1] = true;
		if(y + 1 < 8)
			posibles[x][y + 1] = true;
		if(x + 1 < 8 && y - 1 >= 0)
		{
			posibles[x + 1][y - 1] = true;
			posibles[x + 1][y] = true;
		}
		if(x + 1 < 8 && y + 1 < 8)
			posibles[x + 1][y + 1] = true;
		
		return posibles;
	}
	
	@Override
	public int getPositionX()
	{
		//Column (first part of the array)
		return 0;
	}

	@Override
	public int getPositionY()
	{
		// Line (second part of the array)
		return 0;
		
	}
	public boolean getInicical(){
		//si esta a false, se ha movido, esto es necesario para el enroque
		return inicial;
	}

	@Override
	public ImageIcon getImagen(boolean color) {
		ImageIcon imagen = new ImageIcon();
		if(color)
			imagen = new ImageIcon(Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("Ajedrez/Fichas/Piezas/Rey Blanco.png")));
		else
			imagen = new ImageIcon(Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("Ajedrez/Fichas/Piezas/Rey Negro.png")));
		return imagen;
	}
}
